home *** CD-ROM | disk | FTP | other *** search
/ AmigActive 23 / AACD 23.iso / AACD / Resources / System / fat95 / english / readme.too < prev   
Text File  |  2001-06-12  |  14KB  |  416 lines

  1. fat95 v2.15 (11-Jun-2001) readme file
  2.  
  3.  
  4. General facts
  5. =============
  6.  
  7. "fat95" is designed for data exchange with other platforms. This means:
  8. media must be made 100% PC compatible. Basically, there are 2 ways of achieving
  9. this:
  10.  
  11. a) "simple", "unpartitioned"
  12.  
  13. The whole storage space of the medium is occupied by one single FAT data
  14. structure. It also implies that there is no AMIGA style partitioning info
  15. (RDB etc.).
  16. This method is common on floppies (DD and HD), magneto-optical disks (MO`s),
  17. and it is - at least in theory - also permitted on ZIP disks.
  18.  
  19. b) "partitioned"
  20.  
  21. There must be a valid PC style "master boot record" (MBR) inside the first
  22. block of the media. fat95 will then evaluate the contained partition table
  23. to figure out the type, location and size of the FAT data partition.
  24. This method is required for harddisks. Usually, ZIP media also do it that way,
  25. although in most cases there will be only one single FAT16 partition spanning
  26. almost all of the storage space.
  27. You best set up partitions using adequate PC tools like "fdisk", "xfdisk" or
  28. "PartitionMagic". These programs normally leave some unused areas between
  29. partition tables and data partitions. You may then utilize suitable AMIGA
  30. tools to ADD parallel AMIGA style partitioning info.
  31. Important: fat95 only looks at the PC style tables. Using only, for example,
  32. "HDToolBox" will thus NOT WORK.
  33.  
  34.  
  35. boot95
  36. ======
  37.  
  38. Harddisks that were partitioned on a PC often have an unused area of about
  39. 30 kbytes between the MBR and the first partition. You may now try to bring
  40. an Amiga style RDSK chain in there to make a bootable fat95 partition.
  41. First, mount that partition in the usual way, let`s say as PCHD:.
  42. Then type into a shell
  43.  
  44.     boot95 PCHD:
  45.  
  46. fat95 is needed in the L: drawer for this unless you specify a different file
  47. as a second parameter. Simply repeat the procedure to update a fat95 version.
  48. Caution: existing Amiga partition info will be overwritten!
  49. Caution again: be sure that your partition is reachable at boot time, i.e.
  50. within the first 4 Gbytes of a scsi.device disk.
  51.  
  52. My A1200 already can boot OS 3.1 off a 4 Gbyte FAT32 partition now.
  53. There are still some obstacles, however. For example, HDToolBox has problems
  54. displaying LBA style partitions.
  55.  
  56.  
  57. Setup
  58. =====
  59.  
  60. fat95 is installed in the same way as most other alternative filesystems.
  61. I tried hard to make it quite resistant against wrong or missing mountlist
  62. parameters. However, these are the important ones:
  63.  
  64. FileSystem = L:fat95
  65.  
  66. (or wherever you actually stored it, full path)
  67.  
  68. StackSize = 2048
  69.  
  70. (do not use less, you will risk a crash.)
  71.  
  72. Device = mfm.device
  73. Unit = 0
  74. Flags = 0
  75.  
  76. (which physical drive to use)
  77.  
  78. MaxTransfer = 0x20000    /* simple IDE harddisk @ A1200 */
  79.  
  80. (not needed for floppies and ATAPI devices, eg. ZIP)
  81.  
  82. LowCyl = 0
  83.  
  84. (or just no "LowCyl" entry at all.)
  85.  
  86. Buffers = 20    /* DD Floppy */
  87. Buffers = 40    /* HD Floppy */
  88. Buffers = 100   /* ZIPs, MOs, ... */
  89.  
  90. (quite useful values. When using excessively deep directory trees,
  91. you can try some more buffers.)
  92.  
  93. GlobVec = -1
  94.  
  95. (this is an assembler program)
  96.  
  97. Control = "+s"
  98.  
  99. (forces fat95 into direct SCSI mode rather than trackdisk style.
  100. May help for certain harddisks > 4 Gbyte.)
  101.  
  102. And finally, the worst of all ;-)
  103.  
  104. DosType = 0x464154xx    /* "FATx" */
  105.  
  106. That last byte "xx" serves as the almighty master control.
  107.  
  108.    xx = 00     Choose this for floppies, and for floppies only.
  109.                It activates several special features like trackdisk
  110.                ETD_ commands, and a workaround for some non-mfm.device`s
  111.                that should allow for automatic HD detection now.
  112.  
  113.    xx = 01     The catch-most-of-them universal value. Works with unpartitioned
  114.                media, and will search for for the first FAT partition on
  115.                partitioned media.
  116.  
  117. If you have more than one FAT12, FAT16 or FAT32 partition on your harddisk,
  118. we will have to get a bit more detailled. Just try the LINUX style partition
  119. number:
  120.  
  121.    xx = 01..04 Use "primary" partition of that number.
  122.                "04" would be the exact value for ZIP`s, but "01" should also
  123.                work since the first 3 partition table entries are unused
  124.                on such media normally.
  125.  
  126.    xx = 05..?  Use "logical drive in an extended partition". "05" is the first
  127.                logical drive, "06" the second one etc.
  128.  
  129. You can find some examples in the file of the same name in this dir.
  130.  
  131.  
  132. OS 2.0+ Installation
  133. ====================
  134.  
  135. * Copy the "fat95" file into your L: drawer.
  136. * Doubleclick the "MS0" (internal floppy) or "MS1" example icons to mount now.
  137. * Copy them into the DEVS:DOSDrivers drawer to auto-mount at system start time.
  138. * Create your own mount scrips as needed.
  139.  
  140.  
  141. OS 1.3 Installation
  142. ===================
  143.  
  144. The mfm.device does not work with V 1.3 trackdisk.device. A suitable equivalent
  145. is the messydisk.device by Olaf Seibert. It was originally distributed on a
  146. PD disk called "Time #10" 9 years (!) ago and has now become nearly
  147. unavailable. Therefore I decided to include it here.
  148.  
  149. Doubleclick the "install_fat95_1.3" icon, or
  150.  
  151. * copy the file "fat95" into your "L:" drawer
  152. * copy the files "messydisk.device" and "fat95mountlist" into "DEVS:"
  153.  
  154. Then add this line to your S:Startup-Sequence file:
  155.  
  156. mount ms0: from fat95mountlist
  157.  
  158. Use "ms1:" instead of "ms0:" if you want your second floppy drive to work on
  159. MS-DOS/Win disks.
  160.  
  161.  
  162. Special Issues
  163. ==============
  164.  
  165. When writing into the root drawer of a fat95 disk, you may get the somewhat
  166. strange error message 232 "no more entries in directory". This means:
  167. MS-DOS/Win uses a non-extensible, fixed-size root directory table that can
  168. only hold a limited number of files and sub-dirs even if there is enough
  169. space left on the disk itself. In this case, do one of the following:
  170.  
  171. * store into a sub-directory instead of the root.
  172. * move one or two files into a sub-directory, then try writing again.
  173. * delete one or two root files.
  174. * choose another disk.
  175.  
  176. Unfortunately, I still cannot fully recommend using the messydisk.device.
  177. One very annoying fact is that the MOUNT task will hang until the first
  178. disk change in the appropriate drive is performed. Perhaps this is a race
  179. condition with trackdisk device since everything works quite well in
  180. single step debugging mode.
  181.  
  182. fat95 is now able to recognize NSD (new style device) information and it can
  183. now make use of Trackdisk64 and/or SCSI direct commands for media > 4 Gbyte
  184. as well.
  185.  
  186. Due to several complaints about a disabled "FAT" workbench icon, I decided to
  187. report volumes intentionally incorrect as type "DOS\0". This will make that
  188. icon disappear. I hope and prey that this does not encourage any program to
  189. unqualified direct accessing...
  190.  
  191.  
  192. FAT32 notes
  193. ===========
  194.  
  195. The literally biggest difference compared to the older FAT16 is the so-called
  196. File Allocation Table, or FAT. It usually covers 1/1024 of the entire
  197. partition size. These are impressive 8 Mbytes on an 8 Gbyte partition, for
  198. example. Therefore fat95 does not cache 32bit FAT`s entirely. Access to
  199. fragmented files will slow down a bit this way while you are saving all that
  200. precious memory.
  201.  
  202. The variable storing the currently available free space is another good new
  203. idea... well, at least in theory. The real world does not always keep
  204. it up to date. fat95 rather chooses to calculate the free space out of the FAT
  205. in the old-fashioned way instead. This will take some time directly after
  206. mounting during which you can only read from the volume
  207. ("volume is validating").
  208.  
  209.  
  210. xxxscsi.device hint
  211. ===================
  212.  
  213. Most storage devices are controlled by the scsi.device or a similarly
  214. sounding software module of your controller board.
  215. Currently, I am using a NEC ZIP100 drive at the internal IDE port of
  216. my A1200. Unfortunately the original ROM resident scsi.device does not
  217. like ATAPI hardware at all. It only works with IDE harddisks.
  218. Therefore I recommend installing an appropriate patch, such as
  219. IDE_scsidisk or IDEfix.
  220.  
  221.  
  222. The "console"
  223. =============
  224.  
  225. fat95 doesn`t really support file comments. Reading them returns the extended
  226. date stamps, and writing them accomplishes nothing.
  227. Most of the time.
  228. Just pick a random object of a fat95 disk and assign it the comment
  229.  
  230.     !scandisk
  231.  
  232. and see what happens...
  233. This little cheat code is not perfect yet. However, it already does bring back
  234. those infamous "lost files".
  235.  
  236.  
  237. Troubleshooting
  238. ===============
  239.  
  240. ?: What does the message "object not found" mean when trying to mount
  241.    a fat95 device?
  242. !: Check the "Device =", "Unit =" and "Flags =" MountList entries.
  243.  
  244. If nothing seems to help, you can create a dump of the internal fat95
  245. variables using the included tool "fat95debug". For example, type into
  246. a shell:
  247.  
  248.     fat95debug ms0: ram:ms0.log
  249.  
  250. if the internal floppy drive MS0: refuses to work.
  251. Then send me the just created binary file (about half a kbyte) by email.
  252. I promise there are no passwords or similar secrets in it.
  253.  
  254.  
  255. For the specialists...
  256. ======================
  257.  
  258. ...here is a list of the supported DOS packets so far:
  259.  
  260. 0005    ACTION_DIE
  261. 0007    ACTION_CURRENT_VOLUME
  262. 0008    ACTION_LOCATE_OBJECT
  263. 0009    ACTION_RENAME_DISK
  264. 0015    ACTION_FREE_LOCK
  265. 0016    ACTION_DELETE_OBJECT
  266. 0017    ACTION_RENAME_OBJECT
  267. 0018    ACTION_MORE_CACHE
  268. 0019    ACTION_COPY_DIR
  269. 0021    ACTION_SET_PROTECT
  270. 0022    ACTION_CREATE_DIR
  271. 0023    ACTION_EXAMINE_OBJECT
  272. 0024    ACTION_EXAMINE_NEXT
  273. 0025    ACTION_DISK_INFO
  274. 0026    ACTION_INFO
  275. 0027    ACTION_FLUSH
  276. 0028    ACTION_SET_COMMENT
  277. 0029    ACTION_PARENT
  278. 0031    ACTION_INHIBIT
  279. 0034    ACTION_SET_DATE
  280. 0082    ACTION_READ
  281. 0087    ACTION_WRITE
  282. 1004    ACTION_FINDUPDATE
  283. 1005    ACTION_FINDINPUT
  284. 1006    ACTION_FINDOUTPUT
  285. 1007    ACTION_END
  286. 1008    ACTION_SEEK
  287. 1020    ACTION_FORMAT
  288. 1023    ACTION_WRITE_PROTECT
  289. 1026    ACTION_FH_FROM_LOCK
  290. 1027    ACTION_IS_FILESYSTEM
  291. 1028    ACTION_CHANGE_MODE
  292. 1030    ACTION_COPY_DIR_FH
  293. 1031    ACTION_PARENT_FH
  294. 1033    ACTION_EXAMINE_ALL
  295. 1034    ACTION_EXAMINE_FH
  296. 1035    ACTION_EXAMINE_ALL_END
  297. 4200    ACTION_SERIALIZE_DISK
  298. 4201    ACTION_GET_DISK_FSSM
  299. 4202    ACTION_FREE_DISK_FSSM
  300.  
  301.  
  302. History
  303. =======
  304.  
  305. v1.5    11/1999    first published version
  306.  
  307. v1.6    12/1999    fixed large partition addressing bug
  308.                    added workaround for SID2
  309.                    added volume serial number recognition
  310.                    added directory optimization
  311.  
  312. v1.7    01/2000    fixed minor formatting bug
  313.                    fixed crash on double-mounted volumes
  314.                    made error requesters more informative
  315.                    made code reentrant for multi-device use
  316.  
  317. v1.8    01/2000    added workaround for certain devices who keep
  318.                    trashing forbidden 68k registers
  319.  
  320. v1.11   01/2000    new workarounds for "difficult" devices
  321.                    made drawer operations a bit faster
  322.  
  323. v1.12   01/2000    added on/off feature for ETD_xxx device commands
  324.                    added ACTION_SERIALIZE_DISK packet (used by DiskCopy)
  325.                    made FAT16 mode writeback faster
  326.                    improved disk format recognition
  327.  
  328. v1.13   02/2000    fixed SERIALIZE_DISK bug
  329.  
  330. v1.14   02/2000    fixed bug in updating all FAT copies
  331.                    alternative english version
  332.  
  333. v1.15   02/2000    code optimizations
  334.  
  335. v1.17   02/2000    second published version
  336.                    improved FORMAT command support
  337.  
  338. v1.18   03/2000    first try to implement partition support
  339.  
  340. v1.19   03/2000    fixed partition selection bug
  341.  
  342. v1.20   03/2000    introduced separate directory and file caches
  343.                    added dummy workbench icon suppression
  344.  
  345. v1.21   03/2000    made file access cluster-wise
  346.                    added diskchange messsages to system (IDCMP_DISKINSERTED...)
  347.  
  348. v1.22   03/2000    fixed "large sectors" bug (> 512 bytes)
  349.  
  350. v2.0    04/2000    first try on FAT32
  351.                    fixed another "large sectors" bug
  352.  
  353. v2.1    04/2000    added NSD and TD64 support
  354.                    fixed bug on 28bit entries for FAT32
  355.                    changed intl character handling for short filenames
  356.                    fixed "file creation" timestamp
  357.  
  358. v2.2    06/2000    new restart validator routines
  359.                    longer filenames (65 chars)
  360.                    added FAT32 formatting routines
  361.                    small write access optimizations
  362.                    changed AddBuffers support (like FFS)
  363.                    reworked documentation
  364.  
  365. v2.3    07/2000    added native ExAll() and ExAllEnd()
  366.                    added ChangeMode()
  367.                    bugfixes:
  368.                      ExamineFH()
  369.                      OpenFromLock()
  370.                      Rename()
  371.                      very long path names
  372.                      Workbench support
  373.  
  374. v2.4    07/2000    bugfixes:
  375.                      exclusive locks
  376.                      double MSDOS 8.3 names
  377.  
  378. v2.5    07/2000    new buffering scheme (track-wise)
  379.                    bugfix:
  380.                      free storage space recognition on FAT32
  381.  
  382. v2.6    07/2000    bugfixes:
  383.                      crash when disk is full
  384.                      access to inconsistent files
  385.  
  386. v2.7    08/2000    fixed logigal drive recognition #07+
  387.  
  388. v2.8    08/2000    added software write protection "Lock"
  389.                    added diagnosis tool "fat95debug"
  390.  
  391. v2.9    09/2000    fixed AddBuffers bug
  392.                    ACTION_CURRENT_VOLUME now safer
  393.                    made all access trackwise
  394.  
  395. v2.10   10/2000    now recognizes some more "exotic" partition tables
  396.                    added error requester "TD64 needed but missing"
  397.  
  398. v2.11   12/2000    better FDA compatibility
  399.  
  400. v2.12   02/2001    added "SCSI direct" command support
  401.  
  402. v2.13   02/2001    new buffering system
  403.  
  404. v2.14   03/2001    fixed nasty FAT32 mode bug
  405.  
  406. v2.15   05/2001    bugfixes:
  407.                      crash on filenames >65 chars
  408.                      shutdown sequence (ACTION_DIE)
  409.                      short name generation
  410.                    new:
  411.                      "pure" attribute
  412.                      error check functions
  413.                      boot95
  414.  
  415. (EOF)
  416.